package com.softer.chengxin.home.service;

import com.softer.chengxin.common.domin.ManagerPageResult;
import com.softer.chengxin.common.domin.Module;
import com.softer.chengxin.common.domin.Page;
import com.softer.chengxin.corp.domin.Corp;
import com.softer.chengxin.home.domin.Column;
import com.softer.chengxin.home.domin.Pie;

import java.util.List;
import java.util.Map;

/**
 * @author Gong Zhiyang
 * @date 2018/9/26
 */
public interface HomeService {
    /**
     * 获取菜单
     *
     * @param userName  登陆用户
     * @param loginType 登陆类型
     * @param projectId 项目ID
     * @return
     */
    List<Module> selectAll(String userName, String loginType, String projectId);

    /**
     * 管理员-获取所有信息的待办事项
     *
     * @return 管理员-获取所有信息的待办事项
     */
    Map<String, Object> findCountByState(int id, String loginName);

    /**
     * 获取登陆名
     *
     * @param loginName 登陆账号
     * @param loginType 登陆类型
     * @return 用户名
     */
    String getName(String loginName, String loginType);

    /**
     * 获取柱状图
     *
     * @param id 登陆账号
     * @return 集合
     */
    List<Column> getColumnList(Integer id);

    /**
     * 获取饼图
     *
     * @param year 年份
     * @param id   登陆ID
     * @return 集合
     */
    List<Pie> getPieList(String year, Integer id);

    /**
     * 查询在线企业列表
     *
     * @param id     登陆id
     * @param page   页面信息
     * @param online 是否在线（0否，1是）
     * @return 列表
     */
    ManagerPageResult getOnlineCorpList(Integer id, Page page, String online);

    /**
     * 查询在线人数
     *
     * @param id 登陆账号
     * @return 集合
     */
    List<Integer> online(Integer id);
}
